/**
 * 
 */
package org.gov.vis.master.controller;

import java.util.List;

import org.gov.vis.master.dto.StaffDto;

/**
 * @author Vishwanath
 *
 */
public interface StaffCtlr extends BaseCtlr{

	/**
	 * Method called to Add or Edit the Staff
	 * @param staffDto
	 * @throws Exception
	 */
	public void addOrEditStaff(final StaffDto _staffDto) throws Exception;
	
	/**
	 * Method called to delete the Staff Object based on the passed staff Id
	 * @param _staffId
	 * @throws Exception
	 */
	public void deleteStaff(long _staffId) throws Exception;
	
	/**
	 * Method called to get the Staff based on the passed Staff Object
	 * @param staffDto
	 * @return
	 * @throws Exception
	 */
	public StaffDto getStaff(final StaffDto _staffDto) throws Exception;
	
	/**
	 * Method called to get the list of Staff based on the passed Staff Object
	 * @param staffDto
	 * @return
	 * @throws Exception
	 */
	public List<StaffDto> getStaffs(final StaffDto _staffDto) throws Exception;
	
	/**
	 * Method called to search for the Staffs based on the passed Staff Object
	 * @param staffDto
	 * @return
	 * @throws Exception
	 */
	public List<StaffDto> searchStaffs(final StaffDto _staffDto) throws Exception; 
	
	/**
	 * Method called to get the Staff based on the passed primary key Id
	 * @param _staffId
	 * @return
	 * @throws Exception
	 */
	public StaffDto getStaff(final long _staffId) throws Exception;
	
	/**
	 * Method called to get the Staff based on the passed Code
	 * @param _staffCode
	 * @return
	 * @throws Exception
	 */
	public StaffDto getStaffOnCode(final String _staffCode) throws Exception;
	
	
}//end class
